In modern computer systems, it is common to combine several physical storage units, such as disk drives, tape drives, compact disc (CD) drives, etc. within a storage system to store and retrieve information needed by the system from time to time, and to provide enough free space to accommodate system operations.
In such computer systems, the latency associated with data operations involving those storage systems often has an effect on the overall efficiency of computer system operations. A high latency often results in delayed execution of processes depending on those data operations, and also slows execution of processes which need to use the results of those operations. Thus, lowering latencies associated with storage system data operations increases overall computer system throughput.
In addition to designing storage systems that employ higher capacity disk drives, designers of such storage systems have moved in recent years to include multi-tiered storage systems having increased data integrity.
Different types and formats of storage systems exist to maintain the data integrity of files stored therein and which provide for data recovery in the case of failure of a portion or all of a disk storage unit. For example, different versions of redundant arrays of independent disks (RAID) use parity bits and other techniques to ensure that a corrupt file may be re-created using data from multiple portions of the array, or may alternatively be retrieved from a non-corrupt portion of the array having a second copy of the file.
Multi-tiered storage systems routinely route incoming requests for data operations based on a fixed set of criteria.